package cn.tedu.person.service;

import cn.tedu.person.pojo.dto.StaffInsertDTO;
import cn.tedu.person.pojo.dto.StaffUpdateDTO;
import cn.tedu.person.pojo.vo.StaffIndexVO;
import cn.tedu.person.pojo.vo.StaffStandardVO;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

@Transactional
public interface IStaffService {

    String[] RANK_TEXT = {"普通员工", "管理层"};

    void addNew(StaffInsertDTO staffInsertDTO);

    /**
     * 根据id删除类别数据
     *
     * @param id 类别id
     */
    void delete(Long id);

    void setLeader(Long id);
    void setNoLeader(Long id);

    /**
     * 根据领导id类别查询其子级类别列表
     *
     * @param leaderId 父级类别的id
     * @return 类别列表
     */
    List<StaffStandardVO> listByLeaderId(Long leaderId);

    void updateInfoById(Long id, StaffUpdateDTO staffUpdateDTO);

    StaffStandardVO getStandardById(Long id);

}
